home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / tools / ask / source_ / getnulpt.s < prev    next >
Text File  |  1997-04-02  |  1KB  |  53 lines

  1. *--------------------------------------------------------------------
  2. * デバイスドライバー用関数
  3. *--------------------------------------------------------------------
  4.  
  5.     .include    doscall.equ
  6.     .include    iocscall.mac
  7.  
  8.     .text
  9.     .even
  10.  
  11. *--------------------------------------------------------------------
  12.  
  13.     .xdef    GetNulPoint
  14. GetNulPoint:
  15. * NULデバイスのアドレスを求める -> a1.l
  16.     movem.l    d0/a0,-(sp)
  17.     clr.w    -(sp)        * read open
  18.     pea    NulDev(pc)
  19.     DOS    OPEN
  20.     addq.w    #6,sp        * NULは必ずあるだろうからエラーチェックしない
  21.     move.w    d0,NulFp
  22.     *
  23. *    tst.l    d0
  24. *    bcc    @f
  25. *GN2:    pea    NulErr(pc)
  26. *    DOS    PRINT
  27. *    addq.w    #4,sp
  28. *    bra    GN1
  29. *@@:    *
  30.     move.w    d0,-(sp)
  31.     DOS    GET_FCB_ADR    * FCBを得る
  32.     addq.w    #2,sp
  33. *    tst.l    d0
  34. *    bmi    GN2
  35.     *
  36.     move.l    d0,a1
  37.     move.l    2(a1),a1    * NULデバイスのアドレス
  38.     *
  39.     move.w    NulFp,-(sp)
  40.     DOS    CLOSE        * すぐ閉じる
  41.     addq.w    #2,sp
  42. GN1:
  43.     movem.l    (sp)+,d0/a0
  44.     rts
  45.  
  46. NulFp    .dc.w    0
  47. NulDev    .dc.b    'NUL',0
  48. *NulErr    .dc.b    'NULが見つからない',$0d,$0a,0
  49.     .even
  50.  
  51. *--------------------------------------------------------------------
  52.     .end
  53.